package com.spsoft.system.model.vo.official;

import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 交易流水数据对象
 */
@Data
public class TransactionFlowVO {

    /**
     * 业务编号
     */
    private String YWBH;

    /**
     * 主键ID
     */
    private Long RDID;
    /**
     * 业务类型编码
     */
    private String YWLXBM;

    /**
     * 业务交易号
     */
    private String JYLS;

    /**
     * 交易客户：机构取客户号；个人取证件号码。
     */
    private String KFHM;

    /**
     * 交易日期
     */
    private Date JYRQ;
    /**
     * 备注日期
     */
    private String BZRQ;

    /**
     * 交易机构：已被转换成税务系统的对应机构
     */
    private String JYJG;

    /**
     * 入账机构
     */
    private String LZJG;

    /**
     * 交易金额
     */
    private BigDecimal JYJE;

    /**
     * 汇率
     */
    private BigDecimal WBHL;

    /**
     * 交易人民币金额
     */
    private BigDecimal JYRMBJE;

    /**
     * 税率
     */
    private BigDecimal SYSL;

    /**
     * 交易人民币金额（不含税）
     */
    private BigDecimal BHSJE;

    /**
     * 税额
     */
    private BigDecimal XXSE;

    /**
     * 调减金额（负数）
     */
    private BigDecimal YHCJE;

    /**
     * 未开票金额
     */
    private BigDecimal WKPJE;

    /**
     * 流水性质：1蓝字（正常），2红字，3反向蓝字，4折扣，5冲正，6撤销。
     * 对于5、6时，如外围系统无法提供必填字段，就在必须加工过来，或不在本系统保留（但如存在原流水已开票情时，5、6的处理一致，当作为冲正流水来看待，在原流水标识为已冲正）。
     */
    private Integer LSXZ;

    /**
     * 拆分合并状态：1未拆分合并，2拆分，3合并
     */
    private Long CFHBZT;

    /**
     * 流水开票状态：1未开票，2部分开票，3全部开票，4冲红处理
     */
    private Integer LSZT;

    /**
     * 征税方式（0普通征税、2差额征税）
     */
    private Long ZSFS;

    /**
     * 交易客户手机号
     */
    private String KHSJH;

    /**
     * 交易客户Email
     */
    private String KHEMAIL;

    // --- 交易流水扩展表（新华表）
    /**
     * 证件类型
     */
    private String ZJLX;
    /**
     * 证件号码
     */
    private String ZJHM;
    /**
     * 手机号
     */
    private String SJH;
    /**
     * 电子邮箱
     */
    private String DZYX;
    /**
     * 备注
     */
    private String BZ;

    /**
     * 是否个人业务
     */
    private String ISGRYW;
    /**
     * 投保人纳税人识别号
     */
    private String NSRSBH;
    /**
     * 计量单位
     */
    private String JLDW;

    private String kpbz;
    /**
     * 产品名称，拼接产生
     */
    private String cpmc;

    private String rdidsStr;
    //------------
//    invParams.put("FPQQLSH", makeupZero + RDID); // 发票请求流水号：由主键生成，不足左侧以0补足
//    private String FPQQLSH;

    /**
     * 业务编号
     */
    private String GGXH;


}
